﻿<?php
function yaExiste($nombre, $myconn){
	if (! @mysql_select_db("usersweb",$myconn)){
		echo "<p>Error al conectar a la BBDD en existeUser.</p>";
		exit();
	}
	else{
		$sql="SELECT * FROM users WHERE Nombre='".$nombre."';";
		$result = mysql_query($sql, $myconn);		
		$row = mysql_fetch_array($result);
		if ($row!=null){
			mysql_free_result($result);
			return true;
		}
		else {
			mysql_free_result($result);
			return false;
		}
	}
}

function existeUser($nombre_usuario,$password,$myconn){
	//Si no existe conexión mostramos error
	if (! @mysql_select_db("usersweb",$myconn)){
		echo "<p>Error al conectar a la BBDD en existeUser.</p>";
		exit();
	}
	else{			
		$sql="SELECT u.* FROM users u
				WHERE u.Nombre='".$nombre_usuario."';";
		$result = mysql_query($sql, $myconn);		
		$row = mysql_fetch_array($result);	
		//Si existe ese usuario
		if ($row!=null){
			$nom = $row["Nombre"];
			$pass = $row["Password"];
			//Si coincide el usuario con la contraseña introducida...
			if (($nom == $nombre_usuario) && ($pass == $password)){
				//configuramos las variables de sesión
				$_SESSION["nombre"] = $nom;
				$_SESSION["idUser"] = $row["ID"];
				if ($row["IDProvincia"]!=null){
					$_SESSION["provinciaUser"]=$row["IDProvincia"];
				}
				//liberamos
				mysql_free_result($result);
				return true;
			}
			else {
				mysql_free_result($result);
				return false;
			}
		}
		else {
			mysql_free_result($result);
			return false;
		}
	}
} 
 
function compruebaUserBBDD($idfb_usuario, $nombre_usuario){
	
	require("config_bbdd.php");
	//require("sacaVariablesSesion.php");
	require ('vars.php');
	//echo "IDFB user es: " .$idfb_usuario;
	//echo "nombre usuario es: " .$nombre_usuario;
	//echo $myconn;
	if (! mysql_select_db("usersweb",$myconn)){
					echo "<p>Error al conectar a la BBDD en loginbbdd compruebaUser.</p>";
					echo mysql_errno($myconn) . ": " . mysql_error($myconn) . "\n";
					exit();
	}
	$sql="SELECT u.* FROM users u
			WHERE u.IDFB='".$idfb_usuario."';";
	$result = mysql_query($sql, $myconn);		
	$row = mysql_fetch_array($result);
	//El usuario no está dado de alta en nuestra BBDD
	if ($row==null){
	//echo "<p>el usuario on FBID: ".$idfb_usuario." y nombre: ".$nombre_usuario.", no esta en la bbdd </p>";
		$sql2="INSERT INTO users (IDFB,Nombre) VALUES ('" .$idfb_usuario. "','" .$nombre_usuario. "');";
		//echo $sql2;
		$result2 = mysql_query($sql2, $myconn);
		$idUsuario = mysql_insert_id();
	}
	else{//Está dado de alta
		//Comprobamos que no ha cambiado su nombre en FB. Si lo ha hecho, actualizamos en nuestra BBDD. Todo por no usar $FBme.
		//echo "<p>el usuario on FBID: ".$idfb_usuario." y nombre: ".$nombre_usuario.", Sí esta en la bbdd</p>";
		//print_r($row);
		if ($row["Nombre"]!=$nombre_usuario){
			//echo "<p>Pero antes tenia este otro nombre: ".$row["Nombre"]." y este es su id propio:".$row["ID"]."</p>";
			$sql2="UPDATE users set Nombre='" .$nombre_usuario."' WHERE IDFB='".$idfb_usuario."';";
			$result2 =mysql_query($sql2, $myconn);
		}
		if ($row["IDProvincia"]!=null){
			//echo "provincia::".$_SESSION["provinciaUser"];
			$campoActualizar="provinciaUser";
			actualizaVarSesion($campoActualizar,$row["IDProvincia"]);
			
		}
		$idUsuario=$row["ID"];
	}
	//echo "actualizando las variables de sesión!";
	$campoActualizar="idFBUser";
	actualizaVarSesion($campoActualizar,$idfb_usuario);
	$campoActualizar="idUser";
	actualizaVarSesion($campoActualizar,$idUsuario);
	$campoActualizar="nombreUser";
	actualizaVarSesion($campoActualizar,$nombre_usuario);
}



function userTieneTemperamento($id_user){
	require("config_bbdd.php");
	if (! mysql_select_db("usersweb",$myconn)){
				echo "<p>Error al conectar a la BBDD en loginbbdd userTieneTemperamento.</p>";
				echo mysql_errno($myconn) . ": " . mysql_error($myconn) . "\n";
				exit();
	}
	$sql="SELECT t.* FROM temperamentos t
			WHERE t.IDUser='".$id_user."';";
	$result = mysql_query($sql, $myconn);
	$row = mysql_fetch_array($result);
	//El usuario tiene temperamentos
	if ($row!=null){
	
		$trnk = array_map("ceil", $row);//array_map($callback,$array)--> aplica la función $callback a todos los elementos del array "array".
		//ceil te devuelve la parte entera del numero.
		$campoActualizar="userGuardian";
		actualizaVarSesion($campoActualizar,$trnk[1]);
		$campoActualizar="userArtesano";
		actualizaVarSesion($campoActualizar,$trnk[2]);
		$campoActualizar="userIdealista";
		actualizaVarSesion($campoActualizar,$trnk[3]);
		$campoActualizar="userRacional";
		actualizaVarSesion($campoActualizar,$trnk[4]);
		return true;
	}
	else return false;
}


function actualizaVarSesion($campoActualizar,$valor){
	$_SESSION[$campoActualizar] = $valor;
}

?>